From 5bfab2b9d49913284314ff6c22285b55b44ec1a1 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Fri, 27 Nov 2009 18:17:33 -0500 Subject: [PATCH] Short-circuit get_frame_extents for override-redirect windows There's no reason to do our expensive round-trips for an override-redirect window; just use local information. See bug 581145. Patch by Owen Taylor. --- gdk/x11/gdkwindow-x11.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c index 5f3c13e9c4..6e79ff8644 100644 --- a/gdk/x11/gdkwindow-x11.c +++ b/gdk/x11/gdkwindow-x11.c @@ -2920,6 +2920,7 @@ gdk_window_get_frame_extents (GdkWindow *window, { GdkDisplay *display; GdkWindowObject *private; + GdkWindowImplX11 *impl; Window xwindow; Window xparent; Window root; @@ -2955,7 +2956,8 @@ gdk_window_get_frame_extents (GdkWindow *window, rect->y = private->y; gdk_drawable_get_size ((GdkDrawable *)private, &rect->width, &rect->height); - if (GDK_WINDOW_DESTROYED (private)) + impl = GDK_WINDOW_IMPL_X11 (private->impl); + if (GDK_WINDOW_DESTROYED (private) || impl->override_redirect) return; nvroots = 0; -- 2.30.2